package fcc.Seng462project.client;

/* RPC calls to talk between the client and the server
 */

import java.util.ArrayList;

import com.google.gwt.user.client.rpc.RemoteService;
import com.google.gwt.user.client.rpc.RemoteServiceRelativePath;
import fcc.Seng462project.client.entities.FileInfo;

@RemoteServiceRelativePath("blobservice")
public interface BlobService extends RemoteService {

  String getBlobStoreUploadUrl();                         //get the blobstore URL to upload the file to using HTML form
  
  ArrayList<FileInfo> getFileInfo(String username);       //get the objectify file info from the datastore to populate file list
  
  ArrayList<FileInfo> getSharedFiles(String username);    //get all files shared to user
  
  void shareFile(String shareUsername, String blobkey);   //share a file with a different user
  
  void deleteBlob(String blobkey);                        //delete a blob from the blobstore/datastore

}
